package com.xinhe.web.entity;

import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;

import javax.persistence.Entity;
import javax.persistence.Id;
import javax.persistence.Table;
import java.util.Date;


@Entity
@Table(name = "auth_menu")
@ApiModel(description = "菜单详情")
public class Menu {
    @Id
    @ApiModelProperty("id")
    private Long id;
    @ApiModelProperty("是否被移除 0否 1是")
    private Integer removed;
    @ApiModelProperty("标注")
    private String remark;
    @ApiModelProperty("版本数")
    private Integer versionNum;
    @ApiModelProperty("创建时间")
    private Date createTime;
    @ApiModelProperty("更新时间")
    private Date updateTime;
    @ApiModelProperty("创建人")
    private Long fCreateUserId;
    @ApiModelProperty("更新人")
    private Long fUpdateUserId;

    @ApiModelProperty("路由名")
    private String routerName;
    @ApiModelProperty("菜单图标")
    private String icon;
    @ApiModelProperty("在侧边栏显示的菜单标题")
    private String title;
    @ApiModelProperty("菜单排序")
    private Integer sequence;
    @ApiModelProperty("vue组件路径")
    private String component;
    @ApiModelProperty("类型, 0目录、1菜单、2跳转按钮、3提交按钮")
    private Integer type;
    @ApiModelProperty("进入路由时携带的参数")
    private String params;
    @ApiModelProperty("地址(http/https)开头表示外链路由")
    private String path;
    @ApiModelProperty("父id")
    private Long fParentId;
    @ApiModelProperty("界面终端")
    private Integer terminal = Integer.valueOf(0);

    public Long getId() {
        return id;
    }

    public void setId(Long id) {
        this.id = id;
    }

    public Integer getRemoved() {
        return removed;
    }

    public void setRemoved(Integer removed) {
        this.removed = removed;
    }

    public String getRemark() {
        return remark;
    }

    public void setRemark(String remark) {
        this.remark = remark;
    }

    public Integer getVersionNum() {
        return versionNum;
    }

    public void setVersionNum(Integer versionNum) {
        this.versionNum = versionNum;
    }

    public Date getCreateTime() {
        return createTime;
    }

    public void setCreateTime(Date createTime) {
        this.createTime = createTime;
    }

    public Date getUpdateTime() {
        return updateTime;
    }

    public void setUpdateTime(Date updateTime) {
        this.updateTime = updateTime;
    }

    public Long getfCreateUserId() {
        return fCreateUserId;
    }

    public void setfCreateUserId(Long fCreateUserId) {
        this.fCreateUserId = fCreateUserId;
    }

    public Long getfUpdateUserId() {
        return fUpdateUserId;
    }

    public void setfUpdateUserId(Long fUpdateUserId) {
        this.fUpdateUserId = fUpdateUserId;
    }

    public String getRouterName() {
        return routerName;
    }

    public void setRouterName(String routerName) {
        this.routerName = routerName;
    }

    public String getIcon() {
        return icon;
    }

    public void setIcon(String icon) {
        this.icon = icon;
    }

    public String getTitle() {
        return title;
    }

    public void setTitle(String title) {
        this.title = title;
    }

    public Integer getSequence() {
        return sequence;
    }

    public void setSequence(Integer sequence) {
        this.sequence = sequence;
    }

    public String getComponent() {
        return component;
    }

    public void setComponent(String component) {
        this.component = component;
    }

    public Integer getType() {
        return type;
    }

    public void setType(Integer type) {
        this.type = type;
    }

    public String getParams() {
        return params;
    }

    public void setParams(String params) {
        this.params = params;
    }

    public String getPath() {
        return path;
    }

    public void setPath(String path) {
        this.path = path;
    }

    public Long getfParentId() {
        return fParentId;
    }

    public void setfParentId(Long fParentId) {
        this.fParentId = fParentId;
    }

    public Integer getTerminal() {
        return terminal;
    }

    public void setTerminal(Integer terminal) {
        this.terminal = terminal;
    }
}
